Many modern mobile devices (e.g., a smart phone, tablet computer, wearable computer) include positioning systems for determining the current location of the mobile device. The positioning systems often include satellite-based systems such as the Global Positioning System (GPS) and/or network-based systems such as WiFi positioning systems. The WiFi positioning systems scan for radio frequency (RF) signals provided by RF transmitters, often referred to as “access points.” Using these RF signals and the estimated locations of the access points (often provided by a reference database of estimated access point locations), an estimated location of a location-aware device can be determined and provided to an application. For example, the estimated location of a client device can be used by navigation and location-based service (LBS) applications.
Current techniques use access point (AP) information harvested from a large number of client devices. Server computers process the harvested information using statistical algorithms and serve the estimated AP positions to the client devices upon request, which the client devices use, together with WiFi scan information (e.g., AP signal strengths) to estimate their respective client device locations. For example, the client devices can determine from a WiFi scan a set of APs and corresponding Received Signal Strength Indicators (RSSIs). The estimated positions of the APs can be retrieved from a remote reference database and stored in cache memory of the client device. The estimated locations of the APs can be used with the currently observed RSSI values to estimate the current location (e.g., latitude, longitude, altitude) of the client device.
Conventional AP harvesting techniques require client devices to have accurate location estimation during harvesting, which is often provided by a satellite-based positioning system such as Global Positioning System (GPS). The harvest data can include a list of observed APs, their corresponding RSSI values, a timestamp and GPS data for the location of the observation. The requirement for accurate GPS data cannot be met when GPS data is unavailable or inaccurate, such as in dense urban areas or the interior of structures. The requirement of accurate AP locations also biases AP location estimates towards locations where GPS is available, leading to inaccurate AP location estimates for APs operating in environments where GPS is unavailable.